package com.css.fxfzdzzh.modules.basicData.param.sysDataVersion;

import com.css.fxfzdzzh.base.param.BasePageParam;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

@ApiModel("数据版本管理分页查询接口参数")
@SuperBuilder
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SysDataVersionPageParam extends BasePageParam {
    @ApiModelProperty(value = "版本时间开始时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date versionStartTime; // 版本时间开始时间

    @ApiModelProperty(value = "版本时间结束时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date versionEndTime; // 版本时间结束时间

    @ApiModelProperty(value = "上传时间开始时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date uploadStartTime; // 上传时间开始时间

    @ApiModelProperty(value = "上传时间结束时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date uploadEndTime; // 上传时间结束时间

    @ApiModelProperty(value = "版本号")
    private String versionCode; // 版本号

    @ApiModelProperty(value = "数据名称")
    private String dataName; // 数据名称

    @ApiModelProperty(value = "二级数据类别id")
    private String dataType; // 二级数据类别id

    @ApiModelProperty(value = "一级数据类别Code")
    private String dataTypeCode; // 一级数据类别
    @ApiModelProperty(value = "三级数据类别Code")
    private String typeCode; // 三级数据类别

    /**
     * 三级数据类别（数据表id）
     */
    @ApiModelProperty(value = "三级数据类别（数据表id）")
    private String dataType2;

    @ApiModelProperty(value = "数据范围第一项，1-国家级， 2-省级")
    private Integer dataRangeCountry; // 数据范围第一项，1-国家级， 2-省级

    @ApiModelProperty(value = "数据范围第二项，省份id")
    private String dataRangeProvince; // 数据范围第二项，省份id

    @ApiModelProperty(value = "数据范围第三项，市id")
    private String dataRangeCity; // 数据范围第三项，市id

    @ApiModelProperty("数据范围第四项-县区")
    private String dataRangeArea; // 数据范围县区

    @ApiModelProperty("版本说明")
    private String versionDesc;

    @ApiModelProperty("来源 1：省级 2国家级")
    private String sourceFlag;

    @ApiModelProperty("是否删除 0：正常 1删除")
    private String delFlag;

    @ApiModelProperty("数据版本")
    private String dataVersion;

    @ApiModelProperty("数据类别 水系riverSystem，底层岩性lithology，地震动峰值加速度数据PGA，气候数据climatic")
    private String dataCategory;

    @ApiModelProperty("地震动峰值加速度数据的三种超越概率 002,010，063")
    private String probability;

    //用于圈定数据范围
    private String province;

    private Integer hasNationwide;

    @ApiModelProperty("上传人用户名")
    private String uploadUsername;

    @ApiModelProperty("上传人用户ids 用','分隔")
    private String uploadUserIds;
}
